﻿
/*开发目标：
   1.本模块定义了关于数学比较高级和复杂的功能
   2.比较简单，常用的数学API应当直接放在通用模块，不应当加入到本模块中
   
   目标平台：
   本模块被设计为可移植，不应调用任何特定平台的API
    
   问：设计者曾经考虑，在学会F#后将这个模块重构，
   因为F#比C#更擅长函数式编程，但这个计划为什么被放弃了？
   答：设计者承认，F#更擅长数学计算，这个命题确实是正确的，
   但是F#作为脚本语言，不支持代码折叠，写文档注释也比较麻烦，
   这对于作者来说是一个很大的不便，而且新版本的C#也在不断吸收F#的特点，
   使重构的好处变得不明显，综上所述，决定不予重构

   开发本模块请遵循以下规范：
   #本模块有关数学和几何的接口虽然没有显式实现IEqualityComparer<T>,
   但是在实现它们时，应当重写GetHashCode和Equals方法，
   并提供基于值的相等性比较，这是为了与数学上的习惯相符合*/